/*
有一个由大小写组成的字符串，
现在需要对他进行修改，
将其中的所有小写字母排在大写字母的前面
（大写或小写字母之间不要求保持原来次序），

如有可能尽量选择时间和空间效率高的算法
c语言函数原型void proc（char *str）
也可以采用你自己熟悉的语言 
*/

#include "junix.h"

void proc(char *s) {
	char *p=s-1;
	for ( ; *s; ++s) 
		if (islower(*s) && s!=++p)
			std::swap(*p,*s);
}

int main(){

	char str[]="Hello,World";
	proc(str);
	printf("%s\n",str);
}
